﻿@{
    ViewBag.Title = "没想好";
    var F = Html.F();
}

@section head {

}

@section body {
    @(
    F.Panel().ShowBorder(false).ShowHeader(false).IsViewPort(true)
    .Layout(LayoutType.VBox)
    .BodyPadding(5)
    .Items(
        F.Form()
        .ID("searchForm")
        .Title("查询条件")
        .BodyPadding(5)
        .EnableCollapse(true)
        .LabelAlign(LabelAlign.Right)
        .LabelWidth(70)
        //用户名 姓名 邮箱
        .Rows(
            F.FormRow()
            .ColumnWidths("25% 25% 25% 25%")
            .Items(
                F.TextBox().ID("System_1_20").Label("用户名")
                .EmptyText("请输入用户名"),
                F.TextBox().ID("System_1_120").Label("姓名")
                .EmptyText("请输入姓名"),
                F.TextBox().ID("System_1_140").Label("邮箱")
                .EmptyText("请输入邮箱"),
                F.Button().Text("查询").OnClick(Url.Action("btnSearch_Click"),"searchForm")
                )
            )
        ,
        F.Grid()
        .ID("Grid1").BoxFlex(1).Title("用户列表")
        .DataIDField("System_1_10")
        .AllowPaging(true)
        .PageSize(15)
        .EnableCheckBoxSelect(true)
        .EditWindow(@Url.Content("~/system/system1/sys1Edit"))
        .Toolbars(
            F.Toolbar()
            .Items(
                F.Button().ID("btnnew")
                .IconFont(IconFont.Plus)
                .Text("新增")
                .OnClientClick("showNew();"),
                F.Button().ID("btnedit")
                .IconFont(IconFont.Edit)
                .Text("修改")
                .OnClientClick("showEdit();"),
                F.Button().ID("btndel")
                .IconFont(IconFont.Close)
                .Text("删除")
                )
            )
        .Columns(
            F.RowNumberField(),
            F.RenderField().HeaderText("ID")
            .Hidden(true)
            .DataField("System_1_10"),
            F.RenderField().HeaderText("用户登录名")
            .ExpandUnusedSpace(true)
            .DataField("System_1_20"),
            F.RenderField().HeaderText("手机")
            .ExpandUnusedSpace(true)
            .DataField("System_1_40"),
            F.RenderField().HeaderText("姓名")
            .ExpandUnusedSpace(true)
            .DataField("System_1_120"),
            F.RenderField().HeaderText("邮箱")
            .ExpandUnusedSpace(true)
            .DataField("System_1_140")
            )
        .DataSource(ViewBag.griddata)
        )

  )
    @*@(
        F.Window().ID("Edit").Width(600).Height(400).Title("编辑")
        .IconFont(IconFont.Edit).Hidden(true)
        .EnableIFrame(true).IFrameUrl(Url.Content("~/system/system1/sys1Edit"))
            )*@
}


@section script {
    <script>
        F.ready(function () {
        });

        //新增
        const showNew = () => {
            let grid = F.ui.Grid1;
            grid.Window.show(grid.Window.defaultUrl);
        }
        //参数
        const showEdit = () => {
            let grid = F.ui.Grid1;
            let selectids = grid.getSelectedRows();
            if (selectids.length != 1) {
                notifyEx("请选择一行进行编辑");
                return;
            }
            //let url = `${grid.Window.defaultUrl}?id=${selectids}`;
            let url = setIframeUrl(grid.Window.defaultUrl, { id: selectids});
            grid.Window.show(url);
        }


        /**
         * 设置URL参数
         * data {id,type,name} object
         */
        const setIframeUrl = (url, data = {}) => {
            if (!url.includes("?")) {
                url += "?";
            }
            //如果data是一个obj，拆解后插入到rul中
            if (F.isPOBJ(data)) {
                //默认参数 项目中用到的
                data._reg ||= Math.random();//随机参数 避免缓存
                data.MenuId ||= F.queryString(`MenuId`);//菜单ID，用户判断权限
                //拆为key = value 的格式
                let _data = Object.keys(data).map(key => `${key}=${data[key]}`);
                //用 & 连接
                url += `&${_data.join('&')}`;
            }
            return url;
        }

        //提示
        const notifyEx = (msg, hide = () => { }) => {
            F.notify({
                message: msg,
                messageIcon: "information",
                target: '_top',
                header: false,
                displayMilliseconds: 3000,
                positionX: `center`,
                positionY: `top`,
                hide
            });
        }

    </script>
}